diff -uar Python-3.1.3.orig/Lib/distutils/command/install.py Python-3.1.3/Lib/distutils/command/install.py
--- Python-3.1.3.orig/Lib/distutils/command/install.py	2009-06-04 10:39:50.000000000 +0300
+++ Python-3.1.3/Lib/distutils/command/install.py	2010-11-29 21:24:50.939437490 +0200
@@ -47,14 +47,14 @@
 INSTALL_SCHEMES = {
     'unix_prefix': {
         'purelib': '$base/lib/python$py_version_short/site-packages',
-        'platlib': '$platbase/lib/python$py_version_short/site-packages',
+        'platlib': '$platbase/lib64/python$py_version_short/site-packages',
         'headers': '$base/include/python$py_version_short/$dist_name',
         'scripts': '$base/bin',
         'data'   : '$base',
         },
     'unix_home': {
         'purelib': '$base/lib/python',
-        'platlib': '$base/lib/python',
+        'platlib': '$base/lib64/python',
         'headers': '$base/include/python/$dist_name',
         'scripts': '$base/bin',
         'data'   : '$base',
diff -uar Python-3.1.3.orig/Lib/distutils/sysconfig.py Python-3.1.3/Lib/distutils/sysconfig.py
--- Python-3.1.3.orig/Lib/distutils/sysconfig.py	2010-08-04 00:33:04.000000000 +0300
+++ Python-3.1.3/Lib/distutils/sysconfig.py	2010-11-29 21:36:39.452228520 +0200
@@ -117,8 +117,12 @@
         prefix = plat_specific and EXEC_PREFIX or PREFIX
 
     if os.name == "posix":
+        if plat_specific or standard_lib:
+            lib = "lib64"
+        else:
+            lib = "lib"
         libpython = os.path.join(prefix,
-                                 "lib", "python" + get_python_version())
+                                 lib, "python" + get_python_version())
         if standard_lib:
             return libpython
         else:
diff -uar Python-3.1.3.orig/Lib/site.py Python-3.1.3/Lib/site.py
--- Python-3.1.3.orig/Lib/site.py	2010-10-13 01:56:55.000000000 +0300
+++ Python-3.1.3/Lib/site.py	2010-11-29 21:38:44.804126610 +0200
@@ -262,12 +262,16 @@
         if sys.platform in ('os2emx', 'riscos'):
             sitedirs.append(os.path.join(prefix, "Lib", "site-packages"))
         elif os.sep == '/':
+            sitedirs.append(os.path.join(prefix, "lib64",
+                                        "python" + sys.version[:3],
+                                        "site-packages"))
             sitedirs.append(os.path.join(prefix, "lib",
                                         "python" + sys.version[:3],
                                         "site-packages"))
             sitedirs.append(os.path.join(prefix, "lib", "site-python"))
         else:
             sitedirs.append(prefix)
+            sitedirs.append(os.path.join(prefix, "lib64", "site-packages"))
             sitedirs.append(os.path.join(prefix, "lib", "site-packages"))
 
         if sys.platform == "darwin":
diff -uar Python-3.1.3.orig/Makefile.pre.in Python-3.1.3/Makefile.pre.in
--- Python-3.1.3.orig/Makefile.pre.in	2010-10-14 14:35:17.000000000 +0300
+++ Python-3.1.3/Makefile.pre.in	2010-11-29 21:46:00.887367145 +0200
@@ -94,7 +94,7 @@
 MANDIR=		@mandir@
 INCLUDEDIR=	@includedir@
 CONFINCLUDEDIR=	$(exec_prefix)/include
-SCRIPTDIR=	$(prefix)/lib
+SCRIPTDIR=	$(prefix)/lib64
 
 # Detailed destination directories
 BINLIBDEST=	$(LIBDIR)/python$(VERSION)
diff -uar Python-3.1.3.orig/Modules/Setup.dist Python-3.1.3/Modules/Setup.dist
--- Python-3.1.3.orig/Modules/Setup.dist	2009-06-04 12:30:30.000000000 +0300
+++ Python-3.1.3/Modules/Setup.dist	2010-11-29 21:47:10.734770412 +0200
@@ -351,7 +351,7 @@
 # Andrew Kuchling's zlib module.
 # This require zlib 1.1.3 (or later).
 # See http://www.gzip.org/zlib/
-#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
+#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib64 -lz
 
 # Interface to the Expat XML parser
 #
diff -uar Python-3.1.3.orig/Modules/getpath.c Python-3.1.3/Modules/getpath.c
--- Python-3.1.3.orig/Modules/getpath.c	2010-10-08 02:39:04.000000000 +0300
+++ Python-3.1.3/Modules/getpath.c	2010-11-29 22:03:08.820526757 +0200
@@ -119,8 +119,8 @@
 #endif
 
 #ifndef PYTHONPATH
-#define PYTHONPATH PREFIX "/lib/python" VERSION ":" \
-              EXEC_PREFIX "/lib/python" VERSION "/lib-dynload"
+#define PYTHONPATH PREFIX "/lib64/python" VERSION ":" \
+              EXEC_PREFIX "/lib64/python" VERSION "/lib-dynload"
 #endif
 
 #ifndef LANDMARK
@@ -131,7 +131,7 @@
 static wchar_t exec_prefix[MAXPATHLEN+1];
 static wchar_t progpath[MAXPATHLEN+1];
 static wchar_t *module_search_path = NULL;
-static wchar_t lib_python[] = L"lib/python" VERSION;
+static wchar_t lib_python[] = L"lib64/python" VERSION;
 
 /* In principle, this should use HAVE__WSTAT, and _wstat
    should be detected by autoconf. However, no current
@@ -612,7 +612,7 @@
     }
     else
         wcsncpy(zip_path, L"" PREFIX, MAXPATHLEN);
-    joinpath(zip_path, L"lib/python00.zip");
+    joinpath(zip_path, L"lib64/python00.zip");
     bufsz = wcslen(zip_path);   /* Replace "00" with version */
     zip_path[bufsz - 6] = VERSION[0];
     zip_path[bufsz - 5] = VERSION[2];
@@ -622,7 +622,7 @@
             fprintf(stderr,
                 "Could not find platform dependent libraries <exec_prefix>\n");
         wcsncpy(exec_prefix, L"" EXEC_PREFIX, MAXPATHLEN);
-        joinpath(exec_prefix, L"lib/lib-dynload");
+        joinpath(exec_prefix, L"lib64/lib-dynload");
     }
     /* If we found EXEC_PREFIX do *not* reduce it!  (Yet.) */
 
diff -uar Python-3.1.3.orig/setup.py Python-3.1.3/setup.py
--- Python-3.1.3.orig/setup.py	2010-11-26 13:56:26.000000000 +0200
+++ Python-3.1.3/setup.py	2010-11-29 22:06:52.939575911 +0200
@@ -341,7 +341,7 @@
 
     def detect_modules(self):
         # Ensure that /usr/local is always used
-        add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
+        add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib64')
         add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
 
         # Add paths specified in the environment variables LDFLAGS and
@@ -610,11 +610,11 @@
             elif curses_library:
                 readline_libs.append(curses_library)
             elif self.compiler.find_library_file(lib_dirs +
-                                               ['/usr/lib/termcap'],
+                                               ['/usr/lib64/termcap'],
                                                'termcap'):
                 readline_libs.append('termcap')
             exts.append( Extension('readline', ['readline.c'],
-                                   library_dirs=['/usr/lib/termcap'],
+                                   library_dirs=['/usr/lib64/termcap'],
                                    extra_link_args=readline_extra_link_args,
                                    libraries=readline_libs) )
         else:
@@ -651,8 +651,8 @@
             if krb5_h:
                 ssl_incs += krb5_h
         ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs,
-                                     ['/usr/local/ssl/lib',
-                                      '/usr/contrib/ssl/lib/'
+                                     ['/usr/local/ssl/lib64',
+                                      '/usr/contrib/ssl/lib64/'
                                      ] )
 
         if (ssl_incs is not None and
